
#pragma once

#include "base/core/singleton.h"
#include "Common/TableDefine.h"


class GuildUpgradeConditionCfg : public ManualSingleton <GuildUpgradeConditionCfg>
{
	friend ManualSingleton <GuildUpgradeConditionCfg>;
public:
	GuildUpgradeConditionCfg();
	~GuildUpgradeConditionCfg();
	bool Init(const char *szCfgFile, const char *szSplitChar);
	bool UnInit();
	void Clear();
	const GuildUpgradeConditionCfgInfo *GetGuildUpgradeConditionCfgInfo(int32_t conditionId);
	const GuildUpgradeConditionCfgMap *GetGuildUpgradeConditionCfgMap() { return &m_GuildUpgradeConditionCfgMap; }
private:
	GuildUpgradeConditionCfgMap m_GuildUpgradeConditionCfgMap;
};

#define  g_MakeGuildUpgradeConditionCfgTable() (GuildUpgradeConditionCfg::Instance())
#define  g_GetGuildUpgradeConditionCfgTable() (GuildUpgradeConditionCfg::GetInstance())
#define  g_DelGuildUpgradeConditionCfgTable() (GuildUpgradeConditionCfg::Destroy())